package com.vilen.cms.service;


import com.vilen.cms.model.Channel;
import com.vilen.cms.model.ChannelTree;

import java.util.List;

/**
 * Created by vilen on 2017/2/11.
 */
public interface IChannelService {
    /**
     * 添加栏目
     * @param channel
     * @param pid
     */
    public void add(Channel channel, Integer pid);

    /**
     * 更新
     * @param channel
     */
    public void update(Channel channel);

    public void delete(int id);

    /**
     * 清空栏目中的文章
     * @param id
     */
    public void clearTopic(int id);

    public Channel load(int id);

    /**
     * 根据父id加载 , 首先检查 Systemcontext 中是否存在排序,没有的话加 orders 进去
     * @param pid
     * @return
     */
    public List<Channel> listByParent(Integer pid);

    /**
     * 生成完整的树
     * @return
     */
    public List<ChannelTree> generateTree();

    /**
     * 根据 pid 获取子栏目的树
     * @param pid
     * @return
     */
    public List<ChannelTree> generateTreeByParent(Integer pid);

    public void updateSort(Integer[] ids);
}
